package edu.westga.vocalengineer.audio.gui;

import javax.swing.JPanel;

/**
 * IGuiTransform
 *   An interface for a transform with a GUI component.
 * @author mfarmer2
 *
 */
public interface IGuiTransform {
	
	/**
	 * Returns a JPanel containing options for the transform.
	 * @return a JPanel containing options for the transform.
	 */
	public JPanel getOptionsPanel();
	
	/**
	 * Applies the transform to a sample set, using options
	 * specified in the GUI rather than stored locally.
	 * @param samples
	 * @return
	 */
	public short[] exectueWithGuiOptions(short[] samples);
}
